/**
 * 
 */
package javavis.jip2d.functions.tia2012;

import java.io.Serializable;

import javavis.base.ImageType;
import javavis.base.JIPException;
import javavis.jip2d.base.bitmaps.JIPBmpColor;
import javavis.jip2d.base.bitmaps.JIPBmpFloat;
import javavis.jip2d.functions.FColorToGray;
import javavis.jip2d.functions.FIntegralImage;

/**
 * @author asc
 *
 */
public class TrainExample implements Serializable{

	private JIPBmpFloat integral;
	private int esCara;
	private double peso;

	/**
	 * @param imagen
	 * @param Cara
	 * @throws JIPException
	 */
	public TrainExample(JIPBmpColor imagen, boolean Cara) throws JIPException {
		// Comprobacion Entrada
		if (imagen.getType() != ImageType.COLOR)
			throw new JIPException("Se esperaba una imagen a Color\n");
		esCara=(Cara)?1:0;
		//Guarda imagen integral
		integral = (JIPBmpFloat) new FIntegralImage().processImg(new FColorToGray().processImg(imagen));
	}

    public JIPBmpFloat getIntegral()
    {
        return integral;
    }

    public void setIntegral(JIPBmpFloat integral)
    {
        this.integral = integral;
    }

    public int isEsCara()
    {
        return esCara;
    }

    public void setEsCara(boolean esCara)
    {
        this.esCara = (esCara)?1:0 ;
    }

    public double getPeso()
    {
        return peso;
    }

    public void setPeso(double peso)
    {
        this.peso = peso;
    }
	
    public void actualiza(double error)
    {
        peso=peso+error;
    }
    
	
	
	
	
}
